//有序数组的平方  力扣977
//双指针  
//升序数组平方后的当前最大值要么在最左端，要么在最右端，
//所以用左、右指针进行比较，较大的放入新数组的末尾
class Solution {
public:
	vector<int> sortedSquares(vector<int>& nums) {
		int left = 0;
		int right = nums.size()-1;
		vector<int> ans(nums.size());
		for(int i = nums.size()-1; i >= 0; i--)
		{
			if(nums[left]*nums[left] > nums[right]*nums[right])
			{
				ans[i] = nums[left]*nums[left];
				left++;
			}
			else
			{
				ans[i] = nums[right]*nums[right];
				right--;
			}
		}
		return ans;
	}
};
